package flatlandRPGTest;
import flatlandRPG.Entity;
import flatlandRPG.GLObject;
import org.lwjgl.util.Color;

// -------------------------------------------------------------------------
/**
 *  Tests the methods of GLObject.
 *
 *  @author evant
 *  @version Apr 15, 2011
 */
public abstract class AbstractGLObjectTest extends AbstractEntityTest
{
    private GLObject testObject;

    // ----------------------------------------------------------
    /**
     * Returns a concrete GLObject.
     * @return a concrete GLObject
     */
    public abstract GLObject getObject();

    public Entity getEntity() {
        return getObject();
    }

    /**
     * Sets up the test case. This is called before each test method.
     */
    public void setUp() {
        super.setUp();
        testObject = getObject();
    }

    // ----------------------------------------------------------
    /**
     * Tests that color is set properly.
     */
    public void testColor()
    {
        testObject.setColor(Color.RED);
        assertEquals(Color.RED, testObject.getColor());
    }

    // ----------------------------------------------------------
    /**
     * Tests the draw method.
     */
    public void testDraw() {
        //testObject.draw();
        //I'm not sure how to test this
    }
}
